1. Field of the Invention
The present invention relates to a print control apparatus and a print controlling method.
2. Description of the Related Art
A printer driver is generally installed on a print control apparatus for print-processing data of characters, tables, images and the like. When printing is performed with a printing apparatus such as an inkjet printing apparatus, graphics image data of characters, drawings, etc., and image data of natural images, etc., are created by use of various pieces of application software installed on the print control apparatus. The printer driver receives a drawing instruction based on image data supplied from the application software via an operating system (OS). Multiple gradation image data of RGB data is created (rasterized) on a memory based on the drawing data to be converted into multivalued information of cyan (C), magenta (M), yellow (Y), black (B) and the like. Thereafter, the printer driver subjects the data to pseudo gradation processing such as dithering, error diffusion (ED) or the like, lowers the number of gradations per one pixel, for example, from 8 bit to 2 bit, and then converts the data into print command data, which can be analyzed by the printing apparatus, to transmit the print command data to the printing apparatus. Such series of processings by the printer driver is called print command generation processing.
A general printer driver divides one page into a plurality of regions, the region being called a band, rasterizes the regions into a bit map, and then subjects each line of the band bit map to print command data conversion processing to transmit print commands to the printing apparatus. That is, after rasterization of the band of the top of the page is completed, the print command generation processing is performed and the print commands are transmitted every line to the printing apparatus. As a result, printing can be started by this method earlier compared with a method for performing the print command generation processing after completion of rasterization of the whole of one page, and a processing speed of whole printing is improved. Additionally, memory area used for rasterization by this method is smaller than that by the method for rasterization of the whole of one page at a time.
That is, no sufficient memory capacity can be secured in a low-priced printing apparatus such as an inkjet printing apparatus. Accordingly, there are many cases where the whole print data for one page cannot be receive data time before printing. In such a printing apparatus, a memory is provided for storing print commands for one scanning or several scannings in accordance with the number of nozzles to be used for a printing head, and print operation starts when the memory is full of print commands or receives a fixed number of print commands.
On the other hand, in the case where an arithmetic processing speed of a host computer used by a user is low, or data requiring a complicated image processing is printed, it takes a long time to generate print commands, and a print command generation speed is sometimes lower than a printing speed of the printing apparatus. That is, the printing apparatus cannot start the print operation, that is, scanning of the printing head, until receiving a fixed number of print commands, and thus the operation stops until sufficient print commands are transmitted. Accordingly, depending on the kind of ink or a print medium to be used for printing, when the printing head stops in the middle of printing, unevenness or a stripe (hereinafter, also referred to as print unevenness) sometimes appears at a connection part between an already printed part and a part where printing is restarted.
A technology (Japanese Patent No. 3397350) is conventionally known that, in order to avoid the above problem, reduces the number of nozzles to be used by the printing head and performs print scanning in the case where the printing apparatus cannot receive a fixed number of print commands even if a certain time passes. In the case where the memory is not full of print commands even if a predetermined time passes, or cannot receive a fixed number of print commands, the number of nozzles to be used is reduced and print scanning is performed, and thus interruption of printing can be prevented from causing the print unevenness.
However, depending on the kind of application software or image data, the printing apparatus sometimes cannot receive a print command at all for a long time in the case where the data requires an extremely complicated image processing or the like. In such a case, even if a predetermined time passes, printing cannot be performed even though the number of used nozzles is reduced, and the print unevenness cannot be prevented when printing is restarted after receiving a print command.
Additionally, there exists a technology that generates all print commands once to transmit them to the printing apparatus. However, in the case where there is print data for a plurality of pages, printing is started after the end of the print command generation processing for the print data for the plurality of pages, and thus the waiting time until the start of printing is lengthened, and consequently the processing speed of the whole printing is lowered.